#include "MenuCompartirArchivo.h"

MenuCompartirArchivo::MenuCompartirArchivo() {
}

MenuCompartirArchivo::~MenuCompartirArchivo() {
}

void MenuCompartirArchivo::update() {
	Usuario * usuario = Usuario::getInstance();

	string compartidos = usuario->mostrarMisArchivosCompartidos();

	if (!compartidos.empty()) {
		cout << endl << "Sus archivos compartidos son: " << endl;
		cout << compartidos << endl << endl;
	}

	string path;
	bool pathOk = false;
	bool quit = false;
	do {
		cout << "Ingrese el path al archivo (o volver para regresar al menu): ";
		cin.clear();
		getline(cin,path);
		path = formatearPath(path);

		ifstream stream;
		stream.open(path.c_str(),ifstream::in);
		stream.close();
		stream.flags();
		if(!stream.fail())
		{
			pathOk = true;
		}
		else
		{
			if (path.compare("volver") == 0)
			{
				quit = true;
			}
			else
			{
				cout << endl << "No existe el archivo: " << path << endl;
			}
		}
	} while(!pathOk && !quit);
	if (quit) {
		MenuStack::getInstance()->pop();
	} else {
		usuario->compartirArchivo(path);
	}
}
